#include<iostream>
#include<ctime>
#include<unistd.h>
#include<cstdio>
using namespace std;

int main()
{
  // 用户输入区
  int s;  // 用户想要持续多少秒
  cout << "请输入进度条持续的秒数:";
  cin >> s;  // 输入

  // 处理业务区域
  char loadChar[] = {'-', '\\', '|', '/', '-'};  // 显示加载符号
  char arr[10] = {0};  // 局部字符数组
  time_t startTime = time(nullptr);  // 获取起始的时间戳
  time_t curTime = startTime;  // 当前时间戳
  int index = 0;
  while(true)
  {
    // 死循环遍历，直到时间结束
    curTime = time(nullptr);
    int curS = curTime - startTime;
    float i = min(curS * 1.0 / s, 1.0);
    float n = i * 10;
    for (int j = 0; j < n; ++j)
      arr[j] = '=';
    printf("[%-10s]%.2f%%%c\r", arr, i*100, loadChar[index++ % 5]);
    fflush(stdout);  // 刷新输出缓冲区
    if (i == 1.0) break;  //说明已经加载完毕
    usleep(850);
  }
  printf("\n");


  return 0;
}
